package com.huan.service;

import com.huan.dao.NewsDao;
import com.huan.dao.NewsDaoImpl;
import com.huan.entity.News;

import java.util.List;

/**
 * 作者： 王鹏欢
 *
 * @Date 2022-04-13 17:05
 * @Description
 */
public class NewsServiceImpl implements NewsService {

    NewsDao newsDao = new NewsDaoImpl();

    /**
     * 按条件获取新闻
     *
     * @param categoryID 类别id
     * @param title      标题
     * @return
     */
    @Override
    public List<News> getNewsByCondition(int categoryID, String title)
    {

        return newsDao.getNewsByCondition(categoryID, title);
    }

    /**
     * 根据id获取数据
     *
     * @param id 新闻id
     * @return
     */
    @Override
    public News getNewsListById(int id)
    {
        return newsDao.getNewsListById(id);
    }

    /**
     * 根据id删除新闻
     *
     * @param id
     * @return
     */
    @Override
    public int deleteNews(int id)
    {
        return newsDao.deleteNews(id);
    }

    /**
     * 查询数量
     *
     * @param categoryID
     * @param title
     * @return
     */
    @Override
    public int getRecordCount(int categoryID, String title)
    {
        return newsDao.getNewsByCondition(categoryID, title).size();
    }

    /**
     * 添加新闻
     *
     * @param news
     * @return 受影响行数
     */
    @Override
    public int addNews(News news)
    {
        return newsDao.addNews(news);
    }

    /**
     * 根据id更新新闻
     *
     * @param news
     * @return
     */
    @Override
    public int updateNews(News news)
    {
        return newsDao.updateNews(news);
    }


    /**
     * 分类查询
     *
     * @param categoryID    类别id
     * @param title         title
     * @param currentPageNo 当前页码
     * @param pageSize      页码大小
     * @return
     */
    @Override
    public List<News> getNewListWithPaingInfo(int categoryID, String title, int currentPageNo, int pageSize)
    {
        int startIndex = (currentPageNo - 1) * pageSize;
        return newsDao.getNewListWithPaingInfo(categoryID, title, startIndex, pageSize);
    }
}